﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using rent_car.Manejadores;

namespace rent_car.Gui
{
    public partial class FormConsultaRentas : Form
    {
        private ControlRenta cr;

        private renta r;

        public FormConsultaRentas()
        {
            InitializeComponent();
            cr = ControlRenta.GetInstancia();
            r = new renta();
            cargarGrid(null);
            cargarGridDetalles();
        }

        private void cargarGrid(List<renta> rentas)
        {
            dgvRentas.DataSource = null;
            if (rentas == null)
            {
                dgvRentas.DataSource = cr.GetRentas();
            }
            else {
                dgvRentas.DataSource = rentas;
            }
        }

        private void cargarGridDetalles()
        {
            dgvDetalleRenta.DataSource = null;
            dgvDetalleRenta.DataSource = r.detalles_rentas.ToList();            
        }

       

        private void dgvRentas_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
        {
            r = (renta)dgvRentas.CurrentRow.DataBoundItem;
            txtUsuario.Text = r.usuario.usuario1;
            txtCliente.Text = r.cliente.persona.nombre.ToUpper() + "  " + r.cliente.persona.apellido.ToUpper();
            if(r.fecha.HasValue){
                txtFecha.Text = String.Format("{0:d / MM / yyyy}", r.fecha);
            }
            txtTotalRenta.Text = r.precio_total.ToString()+"$";
            cargarGridDetalles();
        }

        private void txtBusquedaCliente_KeyDown(object sender, KeyEventArgs e)
        {
            if(e.KeyCode == Keys.Enter)
            {
                List<renta> rentasFiltradas = cr.GetRentaPorParam(txtBusquedaCliente.Text);
                cargarGrid(rentasFiltradas);
            }
        }    
    }
}
